home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1992 …SCII & the Runetime Code / ADC Developer CD (1992-07) (''Butch ASCII And The Runtime Code'')_iso / Dev.CD 199207.iso / Developer Essentials / MPW Interfaces & Libraries / CIncludes / Power.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-01-29  |  2.5 KB  |  127 lines  |  [TEXT/MPS ]

  1.  
  2. /************************************************************
  3.  
  4. Created: Tuesday, December 10, 1991 at 6:06 PM
  5.  Power.h
  6.  C Interface to the Macintosh Libraries
  7.  
  8.  
  9.   Copyright Apple Computer, Inc. 1989-1991
  10.   All rights reserved
  11.  
  12. ************************************************************/
  13.  
  14.  
  15. #ifndef __POWER__
  16. #define __POWER__
  17.  
  18. #ifndef __TYPES__
  19. #include <Types.h>
  20. #endif
  21.  
  22.  
  23. enum {
  24.  
  25.  
  26. /* Bit positions for ModemByte */
  27.  modemOnBit = 0,
  28.  ringWakeUpBit = 2,
  29.  modemInstalledBit = 3,
  30.  ringDetectBit = 4,
  31.  modemOnHookBit = 5,
  32.  
  33. /* masks for ModemByte */
  34.  modemOnMask = 0x1,
  35.  ringWakeUpMask = 0x4,
  36.  modemInstalledMask = 0x8,
  37.  ringDetectMask = 0x10,
  38.  modemOnHookMask = 0x20,
  39.  
  40. /* bit positions for BatteryByte */
  41.  chargerConnBit = 0,
  42.  hiChargeBit = 1,
  43.  chargeOverFlowBit = 2,
  44.  batteryDeadBit = 3,
  45.  batteryLowBit = 4,
  46.  connChangedBit = 5,
  47.  
  48. /* masks for BatteryByte */
  49.  chargerConnMask = 0x1,
  50.  hiChargeMask = 0x2,
  51.  chargeOverFlowMask = 0x4,
  52.  batteryDeadMask = 0x8
  53. };
  54. enum {
  55.  batteryLowMask = 0x10,
  56.  connChangedMask = 0x20,
  57.  
  58. /* commands to SleepQRec sleepQProc */
  59.  sleepRequest = 1,
  60.  sleepDemand = 2,
  61.  sleepWakeUp = 3,
  62.  sleepRevoke = 4,
  63.  
  64. /* SleepQRec.sleepQFlags */
  65.  noCalls = 1,
  66.  noRequest = 2,
  67.  
  68.  slpQType = 16,
  69.  sleepQType = 16
  70. };
  71.  
  72. typedef char ModemByte;
  73. typedef char BatteryByte;
  74.  
  75. typedef long PMResultCode;
  76.  
  77. struct SleepQRec {
  78.  struct SleepQRec *sleepQLink;
  79.  short sleepQType;        /*type = 16*/
  80.  ProcPtr sleepQProc;    /*Pointer to sleep routine*/
  81.  short sleepQFlags;
  82. };
  83.  
  84. typedef struct SleepQRec SleepQRec;
  85. typedef SleepQRec *SleepQRecPtr;
  86.  
  87.  
  88. #ifdef __cplusplus
  89. extern "C" {
  90. #endif
  91. pascal OSErr DisableWUTime(void); 
  92. pascal OSErr GetWUTime(long *WUTime,Byte *WUFlag); 
  93. pascal OSErr SetWUTime(long WUTime); 
  94. pascal OSErr BatteryStatus(Byte *Status,Byte *Power); 
  95. pascal OSErr ModemStatus(Byte *Status); 
  96. #pragma parameter __D0 IdleUpdate
  97. pascal long IdleUpdate(void)
  98.  = 0xA285; 
  99. #pragma parameter __D0 GetCPUSpeed
  100. pascal long GetCPUSpeed(void)
  101.  = {0x70FF,0xA485}; 
  102. pascal void EnableIdle(void)
  103.  = {0x7000,0xA485}; 
  104. pascal void DisableIdle(void)
  105.  = {0x7001,0xA485}; 
  106. #pragma parameter SleepQInstall(__A0)
  107. pascal void SleepQInstall(SleepQRecPtr qRecPtr)
  108.  = 0xA28A; 
  109. #pragma parameter SleepQRemove(__A0)
  110. pascal void SleepQRemove(SleepQRecPtr qRecPtr)
  111.  = 0xA48A; 
  112. pascal void AOn(void)
  113.  = {0x7004,0xA685}; 
  114. pascal void AOnIgnoreModem(void)
  115.  = {0x7005,0xA685}; 
  116. pascal void BOn(void)
  117.  = {0x7000,0xA685}; 
  118. pascal void AOff(void)
  119.  = {0x7084,0xA685}; 
  120. pascal void BOff(void)
  121.  = {0x7080,0xA685}; 
  122. #ifdef __cplusplus
  123. }
  124. #endif
  125.  
  126. #endif
  127.